iT邦幫忙

2022 iThome 鐵人賽

DAY 9
0
自我挑戰組

Python簡單應用系列 第 9

Day 9 - Python變數範圍

  • 分享至 

  • xImage
  •  

變數的有效範圍可以分成區域變數以及全域變數
區域變數在函式中的變數,有效範圍只能在這個函式中使用
全域變數在函式外定義,有效範圍在函式中及函式外皆可使用

  1. 區域變數可以看到以下的範例,函式f1以及f2中的x和y式不衝突的,因為他們在不同的函式中,即使變數名稱相同,也不會互相干擾到,這是因為區域變數的有效範圍只在這個函式中,不會跟其他函式有任何關連
def f1():
    x = 1
    y = 2
    print(x+y)
def f2():
    x = 1
    y = 3
    print(x+y)
 
f1()
f2()

https://ithelp.ithome.com.tw/upload/images/20220921/20151938mufiTFZnmx.jpg
2. 全域變數定義後在任何函式中都可以使用,也可以用在主程式中,像是下面的範例,我定義x = 1,那麼我在任何函式中使用x都會是1

x = 1
def f1():
    y = 2
    print(x+y)
def f2():
    y = 3
    print(x+y)
 
f1()
f2()

https://ithelp.ithome.com.tw/upload/images/20220921/20151938mlbiSQ3odX.jpg
3.那同時使用兩個會出現怎麼樣的結果呢?
我們會發現,區域變數會覆蓋掉全域變數

x = 1
y = 2
def f1():
    x = 3
    print(x)
    print(y)
    
f1()
print(x)

https://ithelp.ithome.com.tw/upload/images/20220921/20151938gKNk6xsJAx.jpg


上一篇
Day 8 - Python字串常用方法
下一篇
Day 10 - Python不同底數的整數
系列文
Python簡單應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言